.class public Lcom/zuimeia/ui/indexscroller/IndexScroller;
.super Landroid/view/View;
.source "IndexScroller.java"


# instance fields
.field private mCommonBtm:Landroid/graphics/Bitmap;

.field private mCurrentSection:I

.field private mDensity:F

.field mIndexBarPaint:Landroid/graphics/Paint;

.field mIndexPaint:Landroid/graphics/Paint;

.field private mIndexbarMargin:F

.field private mIndexbarRect:Landroid/graphics/RectF;

.field private mIndexbarWidth:F

.field private mIsIndexing:Z

.field private mListView:Landroid/widget/ExpandableListView;

.field private mScaledDensity:F

.field private mSections:Ljava/util/List;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/List",
            "<",
            "Ljava/lang/String;",
            ">;"
        }
    .end annotation
.end field


# direct methods
.method public constructor <init>(Landroid/content/Context;)V
    .registers 4
    .param p1, "context"    # Landroid/content/Context;

    .prologue
    const/4 v1, 0x0

    .line 32
    invoke-direct {p0, p1}, Landroid/view/View;-><init>(Landroid/content/Context;)V

    .line 22
    const/4 v0, -0x1

    iput v0, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mCurrentSection:I

    .line 23
    const/4 v0, 0x0

    iput-boolean v0, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIsIndexing:Z

    .line 24
    iput-object v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mListView:Landroid/widget/ExpandableListView;

    .line 25
    iput-object v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mSections:Ljava/util/List;

    .line 33
    invoke-virtual {p0, p1}, Lcom/zuimeia/ui/indexscroller/IndexScroller;->init(Landroid/content/Context;)V

    .line 34
    return-void
.end method

.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
    .registers 5
    .param p1, "context"    # Landroid/content/Context;
    .param p2, "attrs"    # Landroid/util/AttributeSet;

    .prologue
    const/4 v1, 0x0

    .line 37
    invoke-direct {p0, p1, p2}, Landroid/view/View;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V

    .line 22
    const/4 v0, -0x1

    iput v0, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mCurrentSection:I

    .line 23
    const/4 v0, 0x0

    iput-boolean v0, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIsIndexing:Z

    .line 24
    iput-object v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mListView:Landroid/widget/ExpandableListView;

    .line 25
    iput-object v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mSections:Ljava/util/List;

    .line 38
    invoke-virtual {p0, p1}, Lcom/zuimeia/ui/indexscroller/IndexScroller;->init(Landroid/content/Context;)V

    .line 39
    return-void
.end method

.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
    .registers 6
    .param p1, "context"    # Landroid/content/Context;
    .param p2, "attrs"    # Landroid/util/AttributeSet;
    .param p3, "defStyle"    # I

    .prologue
    const/4 v1, 0x0

    .line 42
    invoke-direct {p0, p1, p2, p3}, Landroid/view/View;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V

    .line 22
    const/4 v0, -0x1

    iput v0, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mCurrentSection:I

    .line 23
    const/4 v0, 0x0

    iput-boolean v0, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIsIndexing:Z

    .line 24
    iput-object v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mListView:Landroid/widget/ExpandableListView;

    .line 25
    iput-object v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mSections:Ljava/util/List;

    .line 43
    invoke-virtual {p0, p1}, Lcom/zuimeia/ui/indexscroller/IndexScroller;->init(Landroid/content/Context;)V

    .line 44
    return-void
.end method

.method private contains(FF)Z
    .registers 6
    .param p1, "x"    # F
    .param p2, "y"    # F

    .prologue
    const/4 v0, 0x0

    .line 141
    iget-object v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarRect:Landroid/graphics/RectF;

    if-nez v1, :cond_6

    .line 145
    :cond_5
    :goto_5
    return v0

    :cond_6
    iget-object v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarRect:Landroid/graphics/RectF;

    iget v1, v1, Landroid/graphics/RectF;->left:F

    cmpl-float v1, p1, v1

    if-ltz v1, :cond_5

    iget-object v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarRect:Landroid/graphics/RectF;

    iget v1, v1, Landroid/graphics/RectF;->top:F

    cmpl-float v1, p2, v1

    if-ltz v1, :cond_5

    iget-object v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarRect:Landroid/graphics/RectF;

    iget v1, v1, Landroid/graphics/RectF;->top:F

    iget-object v2, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarRect:Landroid/graphics/RectF;

    invoke-virtual {v2}, Landroid/graphics/RectF;->height()F

    move-result v2

    add-float/2addr v1, v2

    cmpg-float v1, p2, v1

    if-gtz v1, :cond_5

    const/4 v0, 0x1

    goto :goto_5
.end method

.method private getSectionByPoint(F)I
    .registers 6
    .param p1, "y"    # F

    .prologue
    const/4 v0, 0x0

    .line 149
    iget-object v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mSections:Ljava/util/List;

    if-eqz v1, :cond_d

    iget-object v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mSections:Ljava/util/List;

    invoke-interface {v1}, Ljava/util/List;->size()I

    move-result v1

    if-nez v1, :cond_e

    .line 155
    :cond_d
    :goto_d
    return v0

    .line 151
    :cond_e
    iget-object v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarRect:Landroid/graphics/RectF;

    iget v1, v1, Landroid/graphics/RectF;->top:F

    iget v2, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarMargin:F

    add-float/2addr v1, v2

    cmpg-float v1, p1, v1

    if-ltz v1, :cond_d

    .line 153
    iget-object v0, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarRect:Landroid/graphics/RectF;

    iget v0, v0, Landroid/graphics/RectF;->top:F

    iget-object v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarRect:Landroid/graphics/RectF;

    invoke-virtual {v1}, Landroid/graphics/RectF;->height()F

    move-result v1

    add-float/2addr v0, v1

    iget v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarMargin:F

    sub-float/2addr v0, v1

    cmpl-float v0, p1, v0

    if-ltz v0, :cond_34

    .line 154
    iget-object v0, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mSections:Ljava/util/List;

    invoke-interface {v0}, Ljava/util/List;->size()I

    move-result v0

    add-int/lit8 v0, v0, -0x1

    goto :goto_d

    .line 155
    :cond_34
    iget-object v0, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarRect:Landroid/graphics/RectF;

    iget v0, v0, Landroid/graphics/RectF;->top:F

    sub-float v0, p1, v0

    iget v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarMargin:F

    sub-float/2addr v0, v1

    iget-object v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarRect:Landroid/graphics/RectF;

    invoke-virtual {v1}, Landroid/graphics/RectF;->height()F

    move-result v1

    const/high16 v2, 0x40000000

    iget v3, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarMargin:F

    mul-float/2addr v2, v3

    sub-float/2addr v1, v2

    iget-object v2, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mSections:Ljava/util/List;

    invoke-interface {v2}, Ljava/util/List;->size()I

    move-result v2

    int-to-float v2, v2

    div-float/2addr v1, v2

    div-float/2addr v0, v1

    float-to-int v0, v0

    goto :goto_d
.end method


# virtual methods
.method public draw(Landroid/graphics/Canvas;)V
    .registers 12
    .param p1, "canvas"    # Landroid/graphics/Canvas;

    .prologue
    const/high16 v9, 0x40000000

    .line 72
    iget-object v5, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarRect:Landroid/graphics/RectF;

    iget-object v6, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexBarPaint:Landroid/graphics/Paint;

    invoke-virtual {p1, v5, v6}, Landroid/graphics/Canvas;->drawRect(Landroid/graphics/RectF;Landroid/graphics/Paint;)V

    .line 74
    iget-object v5, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mSections:Ljava/util/List;

    if-eqz v5, :cond_a1

    iget-object v5, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mSections:Ljava/util/List;

    invoke-interface {v5}, Ljava/util/List;->size()I

    move-result v5

    if-lez v5, :cond_a1

    .line 75
    iget-object v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexPaint:Landroid/graphics/Paint;

    .line 76
    .local v1, "indexPaint":Landroid/graphics/Paint;
    iget-object v5, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarRect:Landroid/graphics/RectF;

    invoke-virtual {v5}, Landroid/graphics/RectF;->height()F

    move-result v5

    iget v6, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarMargin:F

    mul-float/2addr v6, v9

    sub-float/2addr v5, v6

    iget-object v6, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mSections:Ljava/util/List;

    invoke-interface {v6}, Ljava/util/List;->size()I

    move-result v6

    int-to-float v6, v6

    div-float v4, v5, v6

    .line 77
    .local v4, "sectionHeight":F
    invoke-virtual {v1}, Landroid/graphics/Paint;->descent()F

    move-result v5

    invoke-virtual {v1}, Landroid/graphics/Paint;->ascent()F

    move-result v6

    sub-float/2addr v5, v6

    sub-float v5, v4, v5

    div-float v3, v5, v9

    .line 78
    .local v3, "paddingTop":F
    const/4 v0, 0x0

    .local v0, "i":I
    :goto_38
    iget-object v5, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mSections:Ljava/util/List;

    invoke-interface {v5}, Ljava/util/List;->size()I

    move-result v5

    if-ge v0, v5, :cond_a1

    .line 79
    iget v6, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarWidth:F

    iget-object v5, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mSections:Ljava/util/List;

    invoke-interface {v5, v0}, Ljava/util/List;->get(I)Ljava/lang/Object;

    move-result-object v5

    check-cast v5, Ljava/lang/String;

    invoke-virtual {v1, v5}, Landroid/graphics/Paint;->measureText(Ljava/lang/String;)F

    move-result v5

    sub-float v5, v6, v5

    div-float v2, v5, v9

    .line 81
    .local v2, "paddingLeft":F
    if-nez v0, :cond_80

    .line 82
    iget-object v5, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mCommonBtm:Landroid/graphics/Bitmap;

    iget-object v6, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarRect:Landroid/graphics/RectF;

    iget v6, v6, Landroid/graphics/RectF;->left:F

    iget-object v7, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarRect:Landroid/graphics/RectF;

    invoke-virtual {v7}, Landroid/graphics/RectF;->width()F

    move-result v7

    iget-object v8, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mCommonBtm:Landroid/graphics/Bitmap;

    invoke-virtual {v8}, Landroid/graphics/Bitmap;->getWidth()I

    move-result v8

    int-to-float v8, v8

    sub-float/2addr v7, v8

    div-float/2addr v7, v9

    add-float/2addr v6, v7

    iget-object v7, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarRect:Landroid/graphics/RectF;

    iget v7, v7, Landroid/graphics/RectF;->top:F

    iget v8, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarMargin:F

    add-float/2addr v7, v8

    int-to-float v8, v0

    mul-float/2addr v8, v4

    add-float/2addr v7, v8

    add-float/2addr v7, v3

    new-instance v8, Landroid/graphics/Paint;

    invoke-direct {v8}, Landroid/graphics/Paint;-><init>()V

    invoke-virtual {p1, v5, v6, v7, v8}, Landroid/graphics/Canvas;->drawBitmap(Landroid/graphics/Bitmap;FFLandroid/graphics/Paint;)V

    .line 78
    :goto_7d
    add-int/lit8 v0, v0, 0x1

    goto :goto_38

    .line 85
    :cond_80
    iget-object v5, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mSections:Ljava/util/List;

    invoke-interface {v5, v0}, Ljava/util/List;->get(I)Ljava/lang/Object;

    move-result-object v5

    check-cast v5, Ljava/lang/String;

    iget-object v6, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarRect:Landroid/graphics/RectF;

    iget v6, v6, Landroid/graphics/RectF;->left:F

    add-float/2addr v6, v2

    iget-object v7, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarRect:Landroid/graphics/RectF;

    iget v7, v7, Landroid/graphics/RectF;->top:F

    iget v8, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarMargin:F

    add-float/2addr v7, v8

    int-to-float v8, v0

    mul-float/2addr v8, v4

    add-float/2addr v7, v8

    add-float/2addr v7, v3

    .line 86
    invoke-virtual {v1}, Landroid/graphics/Paint;->ascent()F

    move-result v8

    sub-float/2addr v7, v8

    .line 85
    invoke-virtual {p1, v5, v6, v7, v1}, Landroid/graphics/Canvas;->drawText(Ljava/lang/String;FFLandroid/graphics/Paint;)V

    goto :goto_7d

    .line 90
    .end local v0    # "i":I
    .end local v1    # "indexPaint":Landroid/graphics/Paint;
    .end local v2    # "paddingLeft":F
    .end local v3    # "paddingTop":F
    .end local v4    # "sectionHeight":F
    :cond_a1
    return-void
.end method

.method public init(Landroid/content/Context;)V
    .registers 5
    .param p1, "context"    # Landroid/content/Context;

    .prologue
    const/4 v2, 0x1

    .line 47
    invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v0

    invoke-virtual {v0}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;

    move-result-object v0

    iget v0, v0, Landroid/util/DisplayMetrics;->density:F

    iput v0, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mDensity:F

    .line 48
    invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v0

    invoke-virtual {v0}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;

    move-result-object v0

    iget v0, v0, Landroid/util/DisplayMetrics;->scaledDensity:F

    iput v0, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mScaledDensity:F

    .line 49
    const/high16 v0, 0x41a00000

    iget v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mDensity:F

    mul-float/2addr v0, v1

    iput v0, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarWidth:F

    .line 50
    const/high16 v0, 0x41200000

    iget v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mDensity:F

    mul-float/2addr v0, v1

    iput v0, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarMargin:F

    .line 52
    new-instance v0, Landroid/graphics/Paint;

    invoke-direct {v0}, Landroid/graphics/Paint;-><init>()V

    iput-object v0, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexBarPaint:Landroid/graphics/Paint;

    .line 53
    iget-object v0, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexBarPaint:Landroid/graphics/Paint;

    const/4 v1, 0x0

    invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setColor(I)V

    .line 54
    iget-object v0, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexBarPaint:Landroid/graphics/Paint;

    invoke-virtual {v0, v2}, Landroid/graphics/Paint;->setAntiAlias(Z)V

    .line 56
    new-instance v0, Landroid/graphics/Paint;

    invoke-direct {v0}, Landroid/graphics/Paint;-><init>()V

    iput-object v0, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexPaint:Landroid/graphics/Paint;

    .line 57
    iget-object v0, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexPaint:Landroid/graphics/Paint;

    const/4 v1, -0x1

    invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setColor(I)V

    .line 58
    iget-object v0, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexPaint:Landroid/graphics/Paint;

    const/16 v1, 0x32

    invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setAlpha(I)V

    .line 59
    iget-object v0, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexPaint:Landroid/graphics/Paint;

    invoke-virtual {v0, v2}, Landroid/graphics/Paint;->setAntiAlias(Z)V

    .line 60
    iget-object v0, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexPaint:Landroid/graphics/Paint;

    const/high16 v1, 0x41600000

    iget v2, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mScaledDensity:F

    mul-float/2addr v1, v2

    invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setTextSize(F)V

    .line 61
    return-void
.end method

.method protected onSizeChanged(IIII)V
    .registers 11
    .param p1, "w"    # I
    .param p2, "h"    # I
    .param p3, "oldw"    # I
    .param p4, "oldh"    # I

    .prologue
    .line 135
    invoke-super {p0, p1, p2, p3, p4}, Landroid/view/View;->onSizeChanged(IIII)V

    .line 136
    new-instance v0, Landroid/graphics/RectF;

    int-to-float v1, p1

    iget v2, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarMargin:F

    sub-float/2addr v1, v2

    iget v2, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarWidth:F

    sub-float/2addr v1, v2

    iget v2, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarMargin:F

    int-to-float v3, p1

    iget v4, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarMargin:F

    sub-float/2addr v3, v4

    int-to-float v4, p2

    iget v5, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarMargin:F

    sub-float/2addr v4, v5

    invoke-direct {v0, v1, v2, v3, v4}, Landroid/graphics/RectF;-><init>(FFFF)V

    iput-object v0, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIndexbarRect:Landroid/graphics/RectF;

    .line 137
    return-void
.end method

.method public onTouchEvent(Landroid/view/MotionEvent;)Z
    .registers 6
    .param p1, "ev"    # Landroid/view/MotionEvent;

    .prologue
    const/4 v1, 0x0

    const/4 v0, 0x1

    .line 94
    invoke-virtual {p1}, Landroid/view/MotionEvent;->getAction()I

    move-result v2

    packed-switch v2, :pswitch_data_64

    :cond_9
    :goto_9
    move v0, v1

    .line 130
    :cond_a
    :goto_a
    return v0

    .line 97
    :pswitch_b
    invoke-virtual {p1}, Landroid/view/MotionEvent;->getX()F

    move-result v2

    invoke-virtual {p1}, Landroid/view/MotionEvent;->getY()F

    move-result v3

    invoke-direct {p0, v2, v3}, Lcom/zuimeia/ui/indexscroller/IndexScroller;->contains(FF)Z

    move-result v2

    if-eqz v2, :cond_9

    .line 100
    iput-boolean v0, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIsIndexing:Z

    .line 102
    invoke-virtual {p1}, Landroid/view/MotionEvent;->getY()F

    move-result v1

    invoke-direct {p0, v1}, Lcom/zuimeia/ui/indexscroller/IndexScroller;->getSectionByPoint(F)I

    move-result v1

    iput v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mCurrentSection:I

    .line 103
    iget-object v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mListView:Landroid/widget/ExpandableListView;

    if-eqz v1, :cond_a

    .line 104
    iget-object v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mListView:Landroid/widget/ExpandableListView;

    iget v2, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mCurrentSection:I

    invoke-virtual {v1, v2}, Landroid/widget/ExpandableListView;->setSelectedGroup(I)V

    goto :goto_a

    .line 111
    :pswitch_31
    iget-boolean v2, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIsIndexing:Z

    if-eqz v2, :cond_9

    .line 113
    invoke-virtual {p1}, Landroid/view/MotionEvent;->getX()F

    move-result v1

    invoke-virtual {p1}, Landroid/view/MotionEvent;->getY()F

    move-result v2

    invoke-direct {p0, v1, v2}, Lcom/zuimeia/ui/indexscroller/IndexScroller;->contains(FF)Z

    move-result v1

    if-eqz v1, :cond_a

    .line 115
    invoke-virtual {p1}, Landroid/view/MotionEvent;->getY()F

    move-result v1

    invoke-direct {p0, v1}, Lcom/zuimeia/ui/indexscroller/IndexScroller;->getSectionByPoint(F)I

    move-result v1

    iput v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mCurrentSection:I

    .line 116
    iget-object v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mListView:Landroid/widget/ExpandableListView;

    if-eqz v1, :cond_a

    .line 117
    iget-object v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mListView:Landroid/widget/ExpandableListView;

    iget v2, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mCurrentSection:I

    invoke-virtual {v1, v2}, Landroid/widget/ExpandableListView;->setSelectedGroup(I)V

    goto :goto_a

    .line 124
    :pswitch_59
    iget-boolean v0, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIsIndexing:Z

    if-eqz v0, :cond_9

    .line 125
    iput-boolean v1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mIsIndexing:Z

    .line 126
    const/4 v0, -0x1

    iput v0, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mCurrentSection:I

    goto :goto_9

    .line 94
    nop

    :pswitch_data_64
    .packed-switch 0x0
        :pswitch_b
        :pswitch_59
        :pswitch_31
    .end packed-switch
.end method

.method public setExpandableListView(Landroid/widget/ExpandableListView;Ljava/util/List;Landroid/graphics/Bitmap;)V
    .registers 4
    .param p1, "lv"    # Landroid/widget/ExpandableListView;
    .param p3, "commonBmp"    # Landroid/graphics/Bitmap;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Landroid/widget/ExpandableListView;",
            "Ljava/util/List",
            "<",
            "Ljava/lang/String;",
            ">;",
            "Landroid/graphics/Bitmap;",
            ")V"
        }
    .end annotation

    .prologue
    .line 64
    .local p2, "sections":Ljava/util/List;, "Ljava/util/List<Ljava/lang/String;>;"
    iput-object p1, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mListView:Landroid/widget/ExpandableListView;

    .line 65
    iput-object p2, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mSections:Ljava/util/List;

    .line 66
    iput-object p3, p0, Lcom/zuimeia/ui/indexscroller/IndexScroller;->mCommonBtm:Landroid/graphics/Bitmap;

    .line 67
    return-void
.end method
